Systems and methods to implement preferred subtitle constructs

ABSTRACT

Systems and methods are provided for applying attributes to subtitles. One example method includes accessing a subtitle file, wherein the subtitle file comprises one or more subtitles, and identifying an attribute to apply to at least a subset of the subtitles. The subtitle file is amended indicate an attribute to apply to at least a subset of the subtitles to create an amended subtitle file. At a computing device, the subtitles of the amended subtitle file are generated for display, wherein the attribute is applied to the subset of the subtitles.

BACKGROUND

The present disclosure is directed towards systems and methods forenabling a user to customize subtitles that are generated for display ata computing device. In particular, systems and methods are providedherein that enable a user to set an attribute that is applied to asubtitle file, so that a user can implement their preferred subtitleconstruct for generating subtitles for display at one or more computingdevices, independent of the subtitle source.

SUMMARY

With the proliferation of video on demand and video streaming services,there has been an increase in both the number of people viewing videocontent and the variety of different screens that are used to view thevideo content. For example, a single streaming service may be viewableon, or via a screen attached to, a number of different computingdevices. These computing devices may include a set-top-box, a smarttelevision, a smartphone, a tablet and/or a web browser running on acomputing device such as a laptop and/or PC. In addition to this, manystreaming services also enable a user to watch content in apicture-in-picture mode, where video content is displayed in a smallerarea that is overlaid on other content being displayed on a screen of,or attached to, the computing device. When watching video content, auser may wish to enable subtitles to be displayed on a screen attachedto the computing device. Subtitles may make use of different constructs,including, for example, animations, the region of the screen on whichthey are displayed and/or different styles, which will cause thesubtitles to be rendered in a specific manner on the screen of, orattached to, the computing device. However, users may, for example, findexcessive animations distracting, find that having subtitles displayedin different regions of the screen is confusing and/or wish to highlightcertain subtitle elements such as, for example, audio description, tomake them more obvious.

In view of the foregoing, it would be beneficial to have a system thatis capable of providing users with the option of enabling and/ordisabling different attributes to be applied to subtitles that arerendered on a screen of, or attached to, a computing device.

Systems and methods are described herein for applying attributes tosubtitles. In accordance with an aspect of the disclosure, a method isprovided for applying attributes to subtitles. The method includesaccessing a subtitle file, wherein the subtitle file comprises one ormore subtitles, and identifying a first attribute to apply to at least asubset of the subtitles. The subtitle file is amended to indicate afirst attribute to apply to at least a subset of the subtitles to createan amended subtitle file. The amended subtitle file is accessed at acomputing device. At the computing device the subtitles of the amendedsubtitle file are generated for display, wherein the first attribute isapplied to the subset of the subtitles. The subtitle file may comprisean original attribute to apply to at least a subset of the one or moresubtitles, and the identified first attribute to apply may be removingthe original attribute. The subtitle file may be parsed to identify theoriginal attribute. For example, the subtitle file may be parsed toidentify one or more sound effects, which are identified in a particularmanner. A sound effect may be identified in the subtitle file via squarebrackets, “[” and “]” and/or via the use of capital letters. The parsingmay comprise identifying the square brackets and/or the use of capitalletters in order to identify sound effects identified in this manner.The subtitle file may be amended to remove the original attribute fromthe subtitles. The first attribute to apply to the subtitles may bestored at the computing device and may be accessible by programs runningon the computing device. Identifying a first attribute to apply to atleast a subset of the subtitles may further comprise a first programrunning on the computing device accessing the stored first attribute.Amending the subtitle file may further comprise the first programrunning on the computing device amending the subtitle file to indicatethat the identified first attribute should be applied to at least asubset of the subtitles to create an amended subtitle file. In oneexample, amending the subtitle file may comprise creating an amendedsubtitle file by amending the accessed subtitle file, such that theaccessed subtitle includes the attribute to apply to at least a subsetof the subtitles. In another example, amending the subtitle file maycomprise creating a new and distinct subtitle file from the accessedsubtitle file, such that the accessed subtitle file remains unamended(or unedited) and the new subtitle file includes the attribute to applyto apply to at least a subset of the subtitles. Generating the subtitlesfor display further may comprise the first program generating thesubtitles for display at the computing device. In this manner a user canset a global setting for a preferred subtitle construct, on a computingdevice, which is accessible by any programming running on the computingdevice. In another example, code snippets may be generated at thecomputing device that enable programs running on the computing device toapply attributes to subtitles and subsequently generate them fordisplay. In other examples, the user may adjust a plurality of settingsto apply multiple preferred subtitle constructs to subtitles. Thesesettings may comprise applying multiple attributes to the subtitles,including adding attributes to the subtitle file, modifying existingattributes and/or removing existing attributes from the subtitle file.For example, the user may enable a global setting to force all subtitlesto be displayed at the top of the screen of the tablet device. The usermay then proceed to open a video container, such as an audio videointerleave container (.avi) or a Matroska multimedia container (.mkv),with the tablet device. On opening the video container, the tabletdevice may access the video file, the audio file and the subtitle filecontained within the container. The subtitle file is a file thatcontains subtitles, and optionally, attributes for generating subtitlesfor display on a display that is integral to, or is attached to, acomputing device. On accessing the subtitles, the tablet device mayidentify that the user has set a setting to force the subtitles to bedisplayed at the top of the screen of the tablet device. In order toapply this setting, the tablet device may amend the subtitle file to addan attribute that causes the subtitles to be displayed at the top of thescreen. This step may take place entirely in a buffer, such that theoriginal subtitle file remains unedited, and the edited version of thefile may be discarded once the user has finished watching the video.Alternatively, the tablet device may directly edit the original subtitlefile, such that an edited subtitle file is stored in a memory of thetablet device and the edited subtitle file is retained. The tabletdevice may access the edited subtitle file and generate the subtitlesfor display at the top of the screen of the tablet device. In additionto generating the subtitles for display, the tablet device may alsodisplay the subtitles on a screen of the tablet device. In someexamples, a media player running on a computing device may perform oneor more of the aforementioned method steps. In some examples, a user mayset an attribute, or attributes, that disable subtitle animations forregular dialog, but enable subtitle animations for audio descriptionsubtitles (e.g., [THUNDER BOOMS]). As discussed above, the subtitle filemay be parsed in order to identify the attribute or attributes. Thismay, where subtitle animations are already indicated in the subtitlefile, alter existing subtitle attributes or, where subtitle animationsare not already indicated in the subtitle file, add one or moreattributes to existing subtitles in the subtitle file. In anotherexample, a subtitle file may be amended so that the text of a singlesubtitle is generated for display with more than one attribute. Forexample, the text “Happy Fourth of July!” may be animated so that it isdisplayed in red for one second, green for two seconds and blue forthree seconds.

The subtitle file may be accessed at a server and amended at the server.The amended subtitle file may be received at the computing device, fromthe server, via a network. The subtitle file may be accessed at theserver from an over-the-top content provider. In an example system, auser may sign up to a web service in order to set a preferred subtitleconstruct for all over-the-top content that is delivered to, forexample, a smart television. Over-the-top content includes video contentthat is streamed live and video content that is accessible on demand viaa network such as the internet. A user may use the web service to enablea setting to remove animations from any subtitle file that is sent tothe smart television as part of a stream from an over-the-top contentprovider. The web service may comprise a server that receives videocontent comprising subtitles from one or more over-the-top serviceproviders via the internet. The subtitle component of the stream may beamended at the server in accordance with the setting, i.e., removing anyanimations from the subtitle file, and the server may re-transmit thestream, comprising the amended subtitle file, to the smart televisionvia the internet. The server may cache the amended subtitle file and theamended subtitle file may be served (if compatible and/or requested) inresponse to requests from subsequent users. For example, an over-the-topcontent provider may receive media content from a broadcaster and theover-the-top content provider may wish to amend subtitle file, such thatall subtitles that were originally indicated to displayed at the top ofa display are indicated to be displayed at the bottom of a display. Inthis example, the subtitle file may be amended once and the amendedsubtitle file may be stored in a cache, such as on a hard drive of aserver or in a random access memory of the server, and transmitted toall, or at least a sub-set, of users who request the media content. Inthis example, when the smart television generates the subtitles fordisplay, the subtitles are generated without any animations. In otherexample systems, existing subtitle animations may be modified and/orremoved entirely.

The identified first attribute may include at least one of a contentelement attribute, a timing attribute, a style attribute, a layoutattribute, an animation attribute, a metadata attribute, a colorattribute, a font size attribute, a font weight attribute and/or a textalignment attribute. The identified attribute may include any knownattribute that can be applied to a subtitle. A single attribute may beapplied to a subtitle and/or multiple attributes may be applied to asubtitle. A subtitle file may comprise a plurality of subtitles. Any oneattribute and/or mix of attributes may be applied to all of thesubtitles of the subtitle file and/or to only a subset of the subtitlesof the subtitle file.

The first attribute to apply to the subtitles may be stored in a userprofile, and the user profile may be accessed to identify the firstattribute to apply to the subtitles. References to a plurality ofcomputing devices may be stored in a user profile. The first attributeto apply to subtitles generated for display at a first computing deviceof the plurality of different computing devices may be stored in theuser profile. A second attribute to apply to subtitles generated fordisplay at a second computing device of the plurality of computingdevices may be stored in the user profile. The computing device at whichthe subtitles are to be generated for display may be identified as thefirst computing device. Identifying a first attribute may furthercomprise accessing the user profile to identify the first attribute toapply to the subtitles to be generated for display at the firstcomputing device. Accessing the amended subtitle file may furthercomprise accessing the subtitle file at the first computing device.Generating the subtitles of the amended subtitle file for display mayfurther comprise generating the subtitles for display at the firstcomputing device. In an example system, a user may enable a setting toallow subtitles to be animated when they are watching content on a smarttelevision, and the user may enable a setting preventing subtitles frombeing animated when they are watching content on a smartphone. Thesettings may be applied to a group of devices, such as “all smarttelevisions” and/or may be applied to single devices such as “Ann'ssmartphone.” The profile may, for example, be associated with anover-the-top content provider, so that when a user logs in to a device,their settings are identified at the same time. The computing devicethat a user is logged in to may amend the subtitle file and generate thesubtitles for display in accordance with the attributes identified bythe setting associated with the computing device.

A subtitle file may be accessed at a first computing device. Identifyinga first attribute may further comprise identifying, at the firstcomputing device, a first attribute to apply to at least a subset of thesubtitles to be generated for display at a second computing device. Thesubtitle file may be amended at the first computing device. The amendedsubtitle file may be transmitted from the first computing device to thesecond computing device. Generating the subtitles for display mayfurther comprise generating the subtitles for display at the secondcomputing device, wherein the first attribute is applied to the subsetof the subtitles. In another example, the subtitle file may be accessedat a first computing device, and the subtitle file may be transmittedfrom the first computing device to a server. The identifying a firstattribute may further comprise identifying, at the server, a firstattribute to apply to at least a subset of the subtitles to be generatedfor display at a second computing device. The subtitle file may beamended at the server. The amended subtitle file may be transmitted fromthe server to the second computing device. Generating the subtitles fordisplay may further comprise generating the subtitles for display at thesecond computing device, wherein the first attribute is applied to thesubset of the subtitles. In an example system, a user may start watchinga video program on a smart television but decide to continue watching iton a smartphone. The user may be happy for subtitles to be displayed ondifferent locations of the screen of the smart television but may wishfor the subtitles to be displayed only at the bottom of the screen whenwatching a video on the smartphone. The user may set a setting thatindicates that the subtitles should be displayed only at the bottom ofthe screen when resuming a program on a smartphone. In this example, thesmart television may amend the subtitle file to remove the attributethat causes the subtitles to be displayed in different locations on thescreen before the subtitle file is transmitted to the smartphone. Inanother example, a server may receive the subtitle file and may amendthe subtitle file in order to remove the attribute that causes thesubtitles to be displayed on different locations on the smartphonescreen. The server may then transmit the subtitle file to thesmartphone. The smartphone may then generate the subtitles for displayat the bottom of the screen of the smartphone. The first computingdevice and the second computing device may be located on the samenetwork, for example, a home network comprising a router and wiredand/or wireless connections between the computing devices. In anotherexample, the first computing device may be connected to a home networkand the second computing device may be connected to a cellular network.The server may be a local server that is connected to a home network. Inanother example, the server may be remote server that is accessed by,for example, the internet. In other example systems, existing subtitleanimations may be modified and/or removed entirely.

BRIEF DESCRIPTIONS OF THE DRAWINGS

The present disclosure, in accordance with one or more variousembodiments, is described in detail with reference to the followingfigures. The drawings are provided for purposes of illustration only andmerely depict typical or example embodiments. These drawings areprovided to facilitate an understanding of the concepts disclosed hereinand shall not be considered limiting of the breadth, scope, orapplicability of these concepts. It should be noted that for clarity andease of illustration these drawings are not necessarily made to scale.

The above and other objects and advantages of the disclosure may beapparent upon consideration of the following detailed description, takenin conjunction with the accompanying drawings, in which:

FIG. 1 shows an exemplary environment in which a subtitle file isamended to associate subtitles with an identified attribute, inaccordance with some embodiments of the disclosure;

FIG. 2A shows an exemplary environment in which a subtitle file isamended at a server to associate subtitles with an identified attribute,in accordance with some embodiments of the disclosure;

FIG. 2B shows another exemplary environment in which a subtitle file isamended at a server to associate subtitles with an identified attribute,in accordance with some embodiments of the disclosure;

FIG. 3A shows an exemplary environment in which an attribute to apply tosubtitles is stored in a user profile and a subtitle file is amended toassociate subtitles with an identified attribute, in accordance withsome embodiments of the disclosure;

FIG. 3B shows another exemplary environment in which an attribute toapply to subtitles is stored in a user profile and a subtitle file isamended to associate subtitles with an identified attribute, inaccordance with some embodiments of the disclosure;

FIG. 4A shows an exemplary environment in which a subtitle file isamended to associate subtitles with an identified attribute and thesubtitles are generated for display at a second computing device, inaccordance with some embodiments of the disclosure;

FIG. 4B shows another exemplary environment in which a subtitle file isamended to associate subtitles with an identified attribute and thesubtitles are generated for display at a second computing device, inaccordance with some embodiments of the disclosure;

FIG. 5 shows a block diagram representing components of a computingdevice and data flow therebetween for amending a subtitle file toindicate an attribute to apply to the subtitles, in accordance with someembodiments of the disclosure;

FIG. 6 shows an example output from an amended subtitle file, inaccordance with some embodiments of the disclosure;

FIG. 7 shows an example subtitle file format, in accordance with someembodiments of the disclosure;

FIG. 8 is a flowchart of illustrative steps involved in applyingattributes to subtitles, in accordance with some embodiments of thepresent disclosure;

FIG. 9 is a flowchart of illustrative steps involved in applyingattributes to subtitles at a second computing device, in accordance withsome embodiments of the present disclosure; and

FIG. 10 is a flowchart of illustrative steps involved in applyingattributes to subtitles, in accordance with some embodiments of thepresent disclosure.

DETAILED DESCRIPTION

Systems and methods are described herein for applying attributes tosubtitles. As referred to herein, subtitles include any text thatreflects the audio content of a media asset. This includes, for example,spoken dialogue. This may also include, for example, non-dialogueinformation that is related to the media content, including, forexample, audio description that describes sounds such as sirens.Subtitles may be in a language that is different from the language ofthe audio content, including, for example, a translation of the audiocontent.

Subtitles may be stored in a subtitle file. A subtitle file is any filethat indicates text to be generated for display on the display of, or adisplay attached to, a computing device and the relative time at whichthe text should be displayed. A subtitle file may be stored within amedia container, such as an audio video interleave container (.avi) or aMatroska multimedia container (.mkv), along with one or morecorresponding video and/or audio files. Typically, a subtitle file maycontain a time stamp, or time code, to indicate when a subtitle shouldbe generated for display with respect to corresponding video and/oraudio content. In use, a computing device may access video content and asubtitle file. The computing device may display the video content withthe subtitles of the subtitle file overlaid on the video content. Asubtitle file may be in any suitable file format, including: text(.txt), SubRip (.srt), SubViewer (.sbv or .sub), MPsub (.mpsub), LRC(.lrc), Videotron Lambda (.cap), SubStation Alpha (.ssa), SynchronisedAccessible Media Interchange (.smi or .sami), RealText (.rt), WebVTT(vtt), Timed-Text Markup Language (.ttml), Distribution Format ExchangeProfile (.ttml or .dfxp), Scenarist Closed Caption (.scc), EBU-STL(.stl), Caption Center (.tds), Captions Inc. (.cin), Cheetah (.cap), NCI(.cap), CEA-708, DVB Teletext, DVB Subtitles and/or 608. Any subtitlefile format used for streaming, video-on-demand and/or digital broadcastcontent may be used. In addition to the text for display and the timestamp, the subtitle file may also include attributes to be applied tothe subtitles when they are displayed, such as position and styleinformation.

The attributes that may be applied to a subtitle include contentelements, such as HTML-like attributes, like <div>, <p>, <span>, andtiming attributes that indicate the time interval during which thesubtitle (and/or any layout or animations applied to the subtitles)should be visible. The attributes may also include style attributes thatindicate the appearance of subtitles, such as text color, text size,text font, text weight, text alignment, text border color, text borderthickness and/or text background color. The attributes may also includelayout attributes that indicate the layout properties of the subtitles,such as the position of the subtitles on the display of, or attached to,the computing device. The attributes may also include animationattributes that may alter the style of the subtitles at different times,for example causing the subtitles to flash, change color and/or moveabout the display. The attributes may also include metadata attributesthat specify additional metadata about the presentation of thesubtitles.

A media asset can comprise any media content. The media content may bestreamed live and/or streamed on demand to a computing device. On-demandcontent may also be downloaded to a computing device in response to auser request and/or according to a pre-set rule. Content includes audio,video and/or any other media content. Audio includes audio-only content,such as songs. Video includes audiovisual content such as movies and/ortelevision programs. An over-the-top content platform may be accessedvia a website and/or an app running on a computing device.

The disclosed methods and systems may be implemented on a computingdevice. As referred to herein, the computing device can be any devicecomprising a processor and memory, for example, a television, a SmartTV, a set-top box, an integrated receiver decoder (IRD) for handlingsatellite television, a digital storage device, a digital media receiver(DMR), a digital media adapter (DMA), a streaming media device, a DVDplayer, a DVD recorder, a connected DVD, a local media server, a BLU-RAYplayer, a BLU-RAY recorder, a personal computer (PC), a laptop computer,a tablet computer, a WebTV box, a personal computer television (PC/TV),a PC media server, a PC media center, a handheld computer, a stationarytelephone, a personal digital assistant (PDA), a mobile telephone, aportable video player, a portable music player, a portable gamingmachine, a smartphone, an augmented reality device, a mixed realitydevice, a virtual reality device, or any other television equipment,computing equipment, or wireless device, and/or combination of the same.

As discussed herein, amending the subtitle file may comprise creating anamended subtitle file by amending the accessed subtitle file, such thatthe accessed subtitle includes the attribute to apply to at least asubset of the subtitles. Amending the subtitle file may also comprisecreating a new and distinct subtitle file from the accessed subtitlefile, such that the accessed subtitle file remains unamended (orunedited) and the new subtitle file includes the attribute to apply toapply to at least a subset of the subtitles.

The methods and/or any instructions for performing any of theembodiments discussed herein may be encoded on computer-readable media.Computer-readable media includes any media capable of storing data. Thecomputer-readable media may be transitory, including, but not limitedto, propagating electrical or electromagnetic signals, or may benon-transitory, including, but not limited to, volatile and non-volatilecomputer memory or storage devices such as a hard disk, floppy disk, USBdrive, DVD, CD, media cards, register memory, processor caches, randomaccess memory (RAM), etc.

FIG. 1 shows an exemplary environment in which a subtitle file isamended to associate subtitles with an identified attribute, inaccordance with some embodiments of the disclosure. A user sets anattribute, or attributes, to apply to subtitles generated for display ata first computing device, such as a smart television 100. In thisexample, the user sets a setting to always display subtitles at thebottom of the screen. When the smart television 100 accesses a subtitlefile 102, for example a subtitle file 102 that is associated with amedia asset accessed from a local storage device, the smart television100 identifies an attribute to apply 104 to the subtitles. In thisexample, the attribute to apply is to apply position information to thesubtitles such that they are generated for display, and displayed, atthe bottom of the screen of the smart television 100. In this example,the smart television 100 amends the subtitle file to remove any existingposition attributes that would cause the subtitles to be displayed at aposition other than at the bottom of the screen and creates an amendedsubtitle file 106. In this example, the amended subtitle file is storedin a temporary buffer and discarded once the user has finished accessingthe media asset; however, in other examples, the amended subtitle filemay be stored on the local storage device and retained once the user hasfinished accessing the media asset. The smart television 100 generatesthe subtitles for display and displays the subtitles 108 at the bottomof the screen of the smart television 100.

FIG. 2A shows an exemplary environment in which a subtitle file isamended at a server to associate subtitles with an identified attribute,in accordance with some embodiments of the disclosure. A user sets anattribute, or attributes, to apply to subtitles generated for display ata first computing device, such as a smart television 200. In thisexample, the user sets a setting to always display subtitles at thebottom of the screen. When a user accesses a media asset comprising asubtitle file 202, the associated subtitle file 202 is sent to a server210. The server 210 identifies an attribute to apply 204 to thesubtitles. In this example, the attribute to apply is to apply positioninformation to the subtitles such that they are generated for display,and displayed, at the bottom of the screen of the smart television 200.In this example, the server 210 amends the subtitle file to remove anyexisting position attributes that would cause the subtitles to bedisplayed at a position other than at the bottom of the screen of thesmart television 200 and creates an amended subtitle file 206. Theamended subtitle file 206 is sent via a communications network 212 tothe smart television 200. The communications network 212 may include theinternet and/or a local network and may include wired and/or wirelesscomponents. The server may cache the amended subtitle file and theamended subtitle file may be served in response to requests fromsubsequent users. In this example, the amended subtitle file is receivedat the smart television 200 and is stored in a temporary buffer anddiscarded once the user has finished accessing the media asset; however,in other examples, the amended subtitle file may be stored on the localstorage device and retained once the user has finished accessing themedia asset. The smart television 200 generates the subtitles fordisplay and displays the subtitles 208 at the bottom of the screen ofthe smart television 200.

FIG. 2B shows another exemplary environment in which a subtitle file isamended at a server to associate subtitles with an identified attribute,in accordance with some embodiments of the disclosure. Again, a usersets an attribute, or attributes, to apply to subtitles generated fordisplay at a first computing device, such as smart television 200. Inthis example, the user sets a setting to always display subtitles at thebottom of the screen. When a user accesses a media asset from anover-the-top (OTT) provider 214, an associated subtitle file 202 is sentfrom the OTT provider 214 to a server 210. In some examples, only thesubtitle file 202 is sent to the server 210. In other examples, theserver 210 sits in between the OTT provider 214 and the smart television200 and receives the entire media asset that the user is accessing. Theserver 210 identifies an attribute to apply 204 to the subtitles. Inthis example, the attribute to apply to the subtitles is positioninformation such that the subtitles are generated for display, anddisplayed, at the bottom of the screen of the smart television 200. Inthis example, the server 210 amends the subtitle file to remove anyexisting position attributes that would cause the subtitles to bedisplayed at a position other than at the bottom of the screen of thesmart television 200 and creates an amended subtitle file 206. Theamended subtitle file 206 is sent via a communications network 212 tothe smart television 200. In the example where the entire media asset issent from the OTT provider 214 to the smart television 200, the entiremedia asset is sent via the communications network 212 to the smarttelevision 200. The communications network 212 may include the internetand/or a local network and may include wired and/or wireless components.The server may cache the amended subtitle file and the amended subtitlefile may be served in response to requests from subsequent users. Inthis example, the amended subtitle file is received at the smarttelevision 200 and is stored in a temporary buffer and discarded oncethe user has finished accessing the media asset; however, in otherexamples, the amended subtitle file may be stored on the local storagedevice and retained once the user has finished accessing the mediaasset. The smart television 200 generates the subtitles for display anddisplays the subtitles 208 at the bottom of the screen of the smarttelevision 200. In another example, the user has an applicationinstalled on their smart television 200 (or computing device), whichenables the smart television 200 (or computing device) to communicatewith the server 210. The server 210 is connected to multiple OTTproviders and/or over-the-air broadcasters, which the user can selectvia the application. In this way, a user can set a single attribute toapply to subtitles generated for display at a smart television 200 (orcomputing device), and this attribute can be applied to the subtitles ofany media asset that the user wishes to consume. In some examples, themedia content (e.g., video and audio segments) and the subtitle filescan already exist (prestored, cached, etc.) on a content deliverynetwork (CDN) and/or edge servers and be readily available to be servedto a client (or user) when requested. In such case, the modification (oramendment) of the subtitle files can happen on a component of the CDNand/or edge server. The component of the CDN and/or edge server maycache the amended subtitle file and the amended subtitle file may beserved in response to requests from subsequent users.

FIG. 3A shows an exemplary environment in which an attribute to apply tosubtitles is stored in a user profile and a subtitle file is amended toassociate subtitles with an identified attribute, in accordance withsome embodiments of the disclosure. A user sets an attribute, orattributes, to apply to subtitles generated for display at a firstcomputing device, such as smartphone 300, in a user profile 316. In thisexample, the user sets a setting to always display subtitles at thebottom of the screen. When the smartphone 300 receives a subtitle file302, for example a subtitle file 302 that is associated with a mediaasset accessed from a memory of the smartphone 300, the smartphone 300accesses the user profile 316 to identify an attribute to apply 304 tothe subtitles. In this example, the user profile 316 is stored locallyon the smartphone 300; however, in other examples the user profile 316may be stored remotely from the smartphone 300, for example, on a serverthat is accessible via a network such as the internet. In this example,the attribute to apply is to apply position information to the subtitlessuch that they are generated for display, and displayed, at the bottomof the screen of the smartphone 300. In this example, the smartphone 300amends the subtitle file to remove any existing position attributes thatwould cause the subtitles to be displayed at a position other than atthe bottom of the screen and creates an amended subtitle file 306. Inthis example, the amended subtitle file is stored in a temporary bufferand discarded once the user has finished accessing the media asset;however, in other examples, the amended subtitle file may be stored on astorage of the smartphone 300 and retained once the user has finishedaccessing the media asset. The smartphone 300 generates the subtitlesfor display and displays the subtitles 308 at the bottom of the screenof the smartphone 300. An advantage of storing the attribute to apply304 to the subtitles in a user profile is that each user can indicatetheir preferred subtitle constructs. For example, multiple users may usethe smartphone 300 and may log in to the smartphone (or any othercomputing device). A first user may wish to disable animations forsubtitles, whereas a second user may wish to enable a bold outline onthe displayed subtitle text. Instead of having to manually change thesubtitle attribute to be applied each time the user uses the smartphone300 (or any other computing device), when a user logs on to thesmartphone 300 (or any other computing device), the smartphone 300 (orany other computing device) may identify a user profile associated withthe log-on details, and the attribute to be applied to the subtitles maybe identified in the user profile. Another advantage is that the userprofile may additionally and/or alternatively be stored on a server andmay be retrieved by a computing device that a user logs on to. In thisway, a user does not have to manually set the attribute to be applied oneach computing device that they use. Rather, when a user logs on to acomputing device, the computing device may identify a user profileassociated with the log-on details and communicate the user profile tothe server. The server may identify the attribute, or attributes, thatare stored in the user profile to apply to subtitles and may send theattribute to apply to subtitles to the computing device.

FIG. 3B shows an exemplary environment in which an attribute to apply tosubtitles is stored in a user profile and a subtitle file is amended toassociate subtitles with an identified attribute, in accordance withsome embodiments of the disclosure. The system of FIG. 3B works insubstantially the same manner as the system of FIG. 3A; however, aplurality of identifiers identifying different computing devices 318 arealso stored in the user profile 316 and an attribute, or attributes, toapply 304 to subtitles are stored with each of the identifiers of theplurality of devices 318. The plurality of identifiers may be used toidentify groups of computing devices, such as smart televisions,smartphones and/or tablets. For example, a user may wish to enableanimations for all smart televisions associated with the user profile316; however, a user may wish to disable animations for all smartphonesassociated with the user profile 316. In another example, the pluralityof identifiers may be used to identify specific computing devices, suchas a personal smartphone and a work smartphone. The user may wish toenable animations for subtitles on their personal smartphone associatedwith the user profile 316 and may wish to disable all animations forsubtitles on their work smartphone associated with the user profile 316.When the smartphone 300 accesses the user profile 316, the smartphone isidentified, for example, as belonging to the group “smartphones,” asdiscussed above, and an attribute to apply to subtitles that correspondsto the smartphone group is identified. As discussed in connection withFIG. 3A, the smartphone amends the subtitle file to apply the identifiedattribute and creates an amended subtitle file 306. The smartphone 300displays the subtitles of the amended subtitle file 306 on a display ofthe smartphone 300. Again, as discussed in connection with FIG. 3A, theuser profile including the identifiers for the plurality of devices 318and the attribute, or attributes, to apply 304 to subtitles may bestored locally on the smartphone 300 (or computing device) and/or on aserver remote to the smartphone 300 (or computing device).

FIG. 4A shows an exemplary environment in which a subtitle file isamended to associate subtitles with an identified attribute and thesubtitles are generated for display at a second computing device, inaccordance with some embodiments of the disclosure. The exampleenvironment depicts a first computing device, such as a smart television400 that is set up to transmit a media asset comprising a subtitle file402 to a second computing device, such as a tablet 422. A user sets anattribute, or attributes, to apply to subtitles generated for display atthe tablet 422. In this example, attribute to apply 404 to the subtitlesis set at a smart television 400. In this example, the user sets asetting to display subtitles 424 at the left and right sides of thescreen of the tablet 422, rather than at the bottom of the screen. Whenthe smart television 400 accesses the subtitle file 402, for example,when accessing a media asset from a local storage device, the smarttelevision 400 identifies an attribute to apply 404 to the subtitles. Inthis example, the attribute to apply to the subtitles is to applyposition information to the subtitles such that they are generated fordisplay, and displayed, at the left and right sides of the screen of thetablet 422. In this example, the smart television 400 amends thesubtitle file to apply the indicated attribute to the subtitles andcreates an amended subtitle file 406. The amended subtitle file 406 istransmitted from the smart television 400 to tablet 422, along with therest of the media asset. The amended subtitle file 406 and the mediaasset may be transmitted wirelessly 420 via, for example, a Wi-Ficonnection of a home network. The home network may comprise wired and/orwireless components. In other examples, the amended subtitle file 406and the media asset may be transmitted over a wide area network, such asthe internet. The amended subtitle file 406 may be transmittedseparately from the rest of the media asset. The tablet 422 generatesthe subtitles for display and displays the subtitles 424 at the left andright sides of the screen of the tablet 422. The smart television 400may display the media asset simultaneously, or substantiallysimultaneously, as the tablet 422 and may make use of the originalsubtitle file 402. In this example, the subtitles 408 are displayed atthe bottom of the display of the smart television 400. In some examples,the smart television 400 and the tablet 422 may independently connect toan over-the-top provider of media content and simultaneously receive thesame media content from the over-the-top provider; however, the subtitlefile 402 may be amended at the smart television 400 and transmitted tothe tablet 422, replacing any subtitles that are received from theover-the-top provider at the tablet 422. In this way, a tablet 422 (orany secondary computing device) with limited computing resources is ableto take advantage of improved computing resources that may be availableat the smart television 400. Although the above example is describedwith reference to two computing devices, the example may be expanded toinclude any number of computing devices that receive an amended subtitlefile from the smart television 400.

FIG. 4B shows another exemplary environment in which a subtitle file isamended to associate subtitles with an identified attribute and thesubtitles are generated for display at a second computing device, inaccordance with some embodiments of the disclosure. The exampleenvironment depicts a first computing device, such as a smart television400 that receives a media asset from an over-the-top provider 414 via anetwork, such as the internet, and a second computing device, such as atablet 422, that receives the same media asset from the over-the-topprovider 414 via the network. A user sets an attribute, or attributes,to apply to subtitles generated for display at the tablet 422. In thisexample, attribute to apply 404 to the subtitles is stored at a server410. In this example, the server 410 receives the subtitle file 402 ofthe media asset from the over-the-top provider 414 via the network. Inother examples, the server 410 may receive the entire media asset fromthe over-the-top provider and transmit any video and/or audio parts ofthe media asset to the smart television 400 and/or the tablet 422. Inthis example, the user sets a setting to display subtitles 424 at theleft and right sides of the screen of the tablet 422. When the server410 accesses the received subtitle file 402, the server 410 identifiesan attribute to apply 404 to the subtitles. In this example, theattribute to apply to the subtitles is position information such thatthe subtitles are generated for display, and displayed, at the left andright sides of the screen of the tablet 422. In this example, the server410 amends the subtitle file to apply the indicated attribute to thesubtitles and creates an amended subtitle file 406. The amended subtitlefile 406 is transmitted from the server 410 to tablet 422 via thenetwork. The server may cache the amended subtitle file and the amendedsubtitle file may be served in response to requests from subsequentusers. The tablet 422 generates the subtitles for display and displaysthe subtitles 424 at the left and right sides of the screen of thetablet 422. In this example, the user has not set any settings to applyto the subtitles generated for display on the smart television 400, andthe server 410 transmits the original subtitle file 402 to the smarttelevision via the network. In other examples, if no settings have beenindicated to be applied to the subtitles to be generated for display ata computing device, such as the smart television 400, the computingdevice may receive the subtitle file 402 directly from the over-the-topcontent provider. The smart television 400 may display the media assetsimultaneously, or substantially simultaneously, as the tablet 422 andmake use of the original subtitle file 402. In this example, thesubtitles 408 are displayed at the bottom of the display of the smarttelevision 400. In this example, the server 410 acts as a coordinator tocoordinate the subtitles and any attributes to be applied to thesubtitles, between the two computing devices. Although the above exampleis described with reference to two computing devices, the example may beexpanded to include any number of computing devices, wherein at least asubset of the computing devices receive an amended subtitle file fromthe server 410.

FIG. 5 shows a block diagram representing components of a computingdevice and data flow therebetween for amending a subtitle file toindicate an attribute to apply to the subtitles, in accordance with someembodiments of the disclosure. Computing device 500 (e.g., a smarttelevision 100, 200, 400, smartphone 300, tablet 422 as discussed inconnection with FIGS. 1-4) comprises input circuitry 504, controlcircuitry 507 and an output module 518. Control circuitry 507 may bebased on any suitable processing circuitry (not shown) and comprisescontrol circuits and memory circuits, which may be disposed on a singleintegrated circuit or may be discrete components and processingcircuitry. As referred to herein, processing circuitry should beunderstood to mean circuitry based on one or more microprocessors,microcontrollers, digital signal processors, programmable logic devices,field-programmable gate arrays (FPGAs), application-specific integratedcircuits (ASICs), etc., and may include a multi-core processor (e.g.,dual-core, quad-core, hexa-core, or any suitable number of cores). Insome embodiments, processing circuitry may be distributed acrossmultiple separate processors or processing units, for example, multipleof the same type of processing units (e.g., two Intel Core i9processors) or multiple different processors (e.g., an Intel Core i5processor and an Intel Core i7 processor). Some control circuits may beimplemented in hardware, firmware, or software.

A user provides an input 502 that is received by the input circuitry504. The input circuitry 504 is configured to receive a user inputrelated to a computing device. For example, this may be via atouchscreen, keyboard, mouse, microphone and/or infra-red controller ofthe computing device 500. The input circuitry 504 transmits 506 the userinput to the control circuitry 507.

The control circuitry 507 comprises a subtitle file receiving module508, an attribute identification module 512, a subtitle amendment module515 and an output module 518. The user input is transmitted 506 to thesubtitle file receiving module 508. At subtitle file receiving module508, a subtitle file is received, for example, when the user inputcomprises selecting a media asset comprising a subtitle file. Thesubtitle file is transferred 510 to the attribute identification module512, where the attribute, or attributes, to apply to the at least asubset of the subtitles in the subtitle file are identified. Thesubtitle file and the identified attribute are transferred 514 to thesubtitle amendment module 515, wherein the subtitle file is amended toindicate the attributes to be applied to the at least a subset ofsubtitles when they are generated for display. The amended subtitle fileis transmitted 516 to the output module 518, where the subtitlegeneration module 520 applies the indicated attribute to the at least asubset of subtitles and generates the subtitles for display.

FIG. 6 shows an example output from an amended subtitle file, inaccordance with some embodiments of the disclosure. A first exampleoutput 600 a at a display of a computing device shows how an attributemay be applied to subtitles 602 a, such that the subtitles are generatedfor display and are displayed in different parts of the display. Asecond example output 600 b at a display of a computing device shows howthe subtitles 602 b may be displayed, i.e., at the bottom of thedisplay, if a subtitle file is amended to remove the aforementionedattribute from the subtitle file.

FIG. 7 shows an example subtitle file format, in accordance with someembodiments of the disclosure. In this example, the Time Text MarkupLanguage (TTML) snippet 700 shows how a subtitle file may be structured,though other subtitle formats fall within the scope of the disclosure.In the subtitle file, each subtitle has a begin time stamp 702 (or timecode) that indicates the relative time, i.e., with respect to the startof the media asset, that the subtitle should be displayed and an endtime stamp 704 (or time code) that indicates the relative time that thesubtitle should stop being displayed. Each subtitle has a style 706associated with it. In this example, the style of subtitle 1 is “s1,”which indicates that the subtitle should be displayed at 100% size, bein the Arial font and be centrally aligned. Each subtitle also hasregion 708 associated with it. In this example, subtitle 1 should bedisplayed at the top of the screen. The text 710 to be displayed foreach subtitle is also indicated. In this example, the text is “TOPSAMPLE.” The subtitle file may be amended by changing the differentattributes 702, 704, 706 and/or 708. For example, the subtitle filecould be amended to include additional styles, s2, s3, s4, etc., whichmay refer to different alignments, fonts and/or size. The styleassociated with a subtitle may be amended to refer to a different style,such as “s2.” The region associated with a subtitle may also be amended,to refer to a different region. Although not shown here, in someexamples, the styles may also refer to different colors, backgroundsand/or text borders. A subtitle may be animated, for example, bybringing forward the end time associated with a first subtitle andintroducing a second subtitle with the same text, that has a begin timethat is the same as the end time of the first subtitle, but with adifferent color indicated in the style.

In another example, additional identifiers may be inserted into thesubtitle file. For example, a “preference index” and/or a “device”identifier may be inserted into the subtitle file. Instead of editingthe attributes associated with each individual subtitle, the “preferenceindex” may be used to indicate a global attribute to apply to all of thesubtitles of the subtitle file. A computing device may extract the“preference index” from the subtitle file, identify a user preferenceindicated by the “preference index” and filter out any attributes thatdo not meet the user preference. For example, the “preference index” mayindicate that all subtitles should be generated and rendered at 110%font size, irrespective of the font size indicated with each individualsubtitle. The “device” identifier may also be used in combination withthe “preference index” to indicate which attributes should applied at aspecific device. For example, the “device” identifier may indicate thatfor computing devices with a display resolution of 1920×1080, thesubtitles should be rendered at 80% font size, and for devices a displayresolution of 3840×2160, the subtitles should be rendered at 110% fontsize. The computing device may identify the display resolution of thescreen on which the subtitles will be generated for display and identifythe attribute to apply to the subtitles. The computing device may thengenerate the subtitles for display with the attribute, or attributes,that are appropriate for the display of the computing device.

FIG. 8 is a flowchart of illustrative steps involved in applyingattributes to subtitles, in accordance with some embodiments of thepresent disclosure. Process 800 may be implemented on an aforementionedcomputing device 100, 200, 300, 400, 422. In addition, one or moreactions of the process 800 may be incorporated into or combined with oneor more actions of any other process or embodiments described herein.

At 802, a subtitle file is accessed, wherein the subtitle file comprisesone or more subtitles. At 804, an attribute to apply to at least asubset of the subtitles is identified. At 806, the subtitle file isamended to indicate the attribute to apply to at least a subset of thesubtitles to create an amended subtitle file. At 808, the amendedsubtitle file is accessed at a computing device. At 810, the subtitlesof the amended subtitle file are generated for display, at a computingdevice, wherein the attribute is applied to the subset of the subtitles.

FIG. 9 is a flowchart of illustrative steps involved in applyingattributes to subtitles at a second computing device, in accordance withsome embodiments of the present disclosure. Process 900 may beimplemented on an aforementioned computing device 100, 200, 300, 400,422. In addition, one or more actions of the process 900 may beincorporated into or combined with one or more actions of any otherprocess or embodiments described herein.

At 902, references to a plurality of computing devices are stored in auser profile. At 904, a first attribute to apply to subtitles generatedfor display at a first computing device of the plurality of differentcomputing devices is stored in the user profile. At 906, a secondattribute to apply to subtitles generated for display at a secondcomputing device of the plurality of computing devices is stored in theuser profile. At 908, a subtitle file is accessed. At 910, the computingdevice at which the subtitles are to be generated for display isidentified as the first computing device. At 912, the user profile isaccessed to identify the first attribute to apply to the subtitles to begenerated for display at the first computing device. At 914, thesubtitle file is amended to indicate the attribute to apply to at leasta subset of the subtitles to create an amended subtitle file. At 916,the amended subtitle file is accessed at the first computing device. At918, the subtitles of the amended subtitle file are generated fordisplay, at the first computing device, wherein the attribute is appliedto the subset of the subtitles.

FIG. 10 is a flowchart of illustrative steps involved in applyingattributes to subtitles, in accordance with some embodiments of thepresent disclosure. Process 1000 may be implemented on an aforementionedcomputing device 100, 200, 300, 400, 422. In addition, one or moreactions of the process 1000 may be incorporated into or combined withone or more actions of any other process or embodiments describedherein.

As discussed in connection with FIG. 7 above, additional identifiers maybe inserted into the subtitle file, for example a “preference index”identifier and a “device” identifier. At 1002, a preference index isextracted from a stream, such as a streamed media asset comprising asubtitles file. At 1004, a recommended screen is extracted, as indicatedby the “device” identifier. At 1006, user preferences are identifiedfrom the extracted preference index. At 1008, any subtitle constructsthat are indicated in the subtitle file but do not meet the identifieduser preferences are filtered out. At 1010, a set of subtitles aregenerated for display, at a computing device, in accordance with theuser preferences.

The processes described above are intended to be illustrative and notlimiting. One skilled in the art would appreciate that the steps of theprocesses discussed herein may be omitted, modified, combined, and/orrearranged, and any additional steps may be performed without departingfrom the scope of the disclosure. More generally, the above disclosureis meant to be exemplary and not limiting. Furthermore, it should benoted that the features and limitations described in any one embodimentmay be applied to any other embodiment herein, and flowcharts orexamples relating to one embodiment may be combined with any otherembodiment in a suitable manner, done in different orders, or done inparallel. In addition, the systems and methods described herein may beperformed in real time. It should also be noted that the systems and/ormethods described above may be applied to, or used in accordance with,other systems and/or methods.

1. A method for applying attributes to subtitles, the method comprising:accessing a subtitle file, wherein the subtitle file comprises one ormore subtitles; identifying a first attribute to apply to at least asubset of the subtitles; amending the subtitle file to indicate thefirst attribute to apply to at least a subset of the subtitles to createan amended subtitle file; accessing the amended subtitle file at acomputing device; and generating, at the computing device, the subtitlesof the amended subtitle file for display, wherein the first attribute isapplied to the subset of the subtitles.
 2. The method of claim 1,wherein: the subtitle file further comprises an original attribute toapply to at least a subset of the one or more subtitles; the methodfurther comprises parsing the subtitle file to identify the originalattribute; the identified first attribute to apply comprises removingthe original attribute; and amending the subtitle file comprisesremoving the original attribute from the subtitles.
 3. The method ofclaim 1, wherein: the subtitle file is accessed at a server; thesubtitle file is amended at the server; and the amended subtitle file isreceived at the computing device, from the server, via a network.
 4. Themethod of claim 1 wherein: the subtitle file is received from anover-the-top content provider and is accessed at a server; the subtitlefile is amended at the server; and the amended subtitle file is receivedat the computing device, from the server, via a network.
 5. The methodof claim 1 wherein: the first attribute to apply to the subtitles isstored at the computing device and is accessible by programs running onthe computing device; identifying a first attribute to apply to at leasta subset of the subtitles further comprises a first program running onthe computing device accessing the stored first attribute; amending thesubtitle file further comprises the first program running on thecomputing device amending the subtitle file to indicate the firstattribute to apply to at least a subset of the subtitles to create anamended subtitle file; and generating the subtitles for display furthercomprises the first program generating the subtitles for display at thecomputing device.
 6. The method of claim 1, wherein the identified firstattribute includes at least one of: a content element attribute, atiming attribute, a style attribute, a layout attribute, an animationattribute, a metadata attribute, a color attribute, a font sizeattribute, a font weight attribute and/or a text alignment attribute. 7.The method of claim 1, further comprising: storing the first attributeto apply to the subtitles in a user profile; and wherein identifying thefirst attribute further comprises accessing the user profile to identifythe attributes to apply to the subtitles.
 8. The method of claim 1,further comprising: storing references to a plurality of computingdevices in a user profile; storing the first attribute to apply tosubtitles generated for display at a first computing device of theplurality of different computing devices in the user profile; storing asecond attribute to apply to subtitles generated for display at a secondcomputing device of the plurality of computing devices in the userprofile; identifying the computing device at which the subtitles are tobe generated for display as the first computing device; wherein:identifying a first attribute to apply further comprises accessing theuser profile to identify the first attribute to apply to the subtitlesto be generated for display at the first computing device; accessing theamended subtitle file further comprises accessing the subtitle file atthe first computing device; and generating the subtitles of the amendedsubtitle file for display further comprises generating the subtitles fordisplay at the first computing device.
 9. The method of claim 1,wherein: the subtitle file is accessed at a first computing device; theidentifying a first attribute to apply further comprises identifying, atthe first computing device, a first attribute to apply to at least asubset of the subtitles to be generated for display at a secondcomputing device; the subtitle file is amended at the first computingdevice; the amended subtitle file is transmitted from the firstcomputing device to the second computing device; and generating thesubtitles for display further comprises generating the subtitles fordisplay at the second computing device, wherein the first attribute isapplied to the subset of the subtitles.
 10. The method of claim 1,wherein: the subtitle file is accessed at a first computing device; thesubtitle file is transmitted from the first computing device to aserver; the identifying a first attribute to apply further comprisesidentifying, at the server, a first attribute to apply to at least asubset of the subtitles to be generated for display at a secondcomputing device; the subtitle file is amended at the server; theamended subtitle file is transmitted from the server to the secondcomputing device; and generating the subtitles for display furthercomprises generating the subtitles for display at the second computingdevice, wherein the first attribute is applied to the subset of thesubtitles.
 11. A system for applying attributes to subtitles, the systemcomprising: a communication port; a memory storing instructions; andcontrol circuitry communicably coupled to the memory and thecommunication port and configured to execute the instructions to: accessa subtitle file, wherein the subtitle file comprises one or moresubtitles; identify a first attribute to apply to at least a subset ofthe subtitles; amend the subtitle file to indicate the first attributeto apply to at least a subset of the subtitles to create an amendedsubtitle file; access the amended subtitle file at a computing device;and generate, at the computing device, the subtitles of the amendedsubtitle file for display, wherein the first attribute is applied to thesubset of the subtitles.
 12. The system of claim 11, wherein: thecontrol circuitry configured to access the subtitle file is furtherconfigured to access a subtitle file comprising an original attribute toapply to at least a subset of the one or more subtitles; the controlcircuitry is further configured to parse the subtitle file to identifythe original attribute; the control circuitry configured to identify thefirst attribute is further configured to identify an attribute thatcomprises removing the original attribute; and the control circuitryconfigured to amend the subtitle file is further configured to amend thesubtitle file to remove the original attribute from the subset of thesubtitles.
 13. The system of claim 11, wherein: the control circuitryconfigured to access the subtitle file is further configured to accessthe subtitle file at a server; the control circuitry configured to amendthe subtitle file is further configured to amend the subtitle file atthe server; and the control circuitry is further configured to accessthe amended subtitle file at the computing device, from the server, viaa network.
 14. The system of claim 11, wherein: the control circuitryconfigured to access the subtitle file is further configured to receivethe subtitle file from an over-the-top content provider and access thesubtitle file at a server; the control circuitry configured to amend thesubtitle file is further configured to amend the subtitle file at theserver; and the control circuitry is further configured to receive theamended subtitle file at the computing device, from the server, via anetwork.
 15. The system of claim 11, wherein: the control circuitry isfurther configured to store the first attribute to apply to thesubtitles at the computing device, wherein the first attribute isaccessible by programs running on the computing device; the controlcircuitry configured to identify a first attribute is further configuredto cause a first program running on the computing device to access thestored first attribute; the control circuitry configured to amend thesubtitle file is further configured to cause a first program running onthe computing device to amend the subtitle file to indicate the firstattribute to apply to at least a subset of the subtitles to create anamended subtitle file; and the control circuitry configured to generatethe subtitles for display is further configured to cause the firstprogram to generate the subtitles for display.
 16. The system of claim11, wherein the identified first attribute includes at least one of: acontent element attribute, a timing attribute, a style attribute, alayout attribute, an animation attribute, a metadata attribute, a colorattribute, a font size attribute, a font weight attribute and/or a textalignment attribute.
 17. The system of claim 11, wherein: the controlcircuitry is further configured to store the first attribute to apply tothe subtitles in a user profile; and the control circuitry configured toidentify the first attribute is further configured to access the userprofile to identify the first attribute to apply to the subtitles. 18.The system of claim 11, wherein the control circuitry is furtherconfigured to: store references to a plurality of computing devices in auser profile; store the first attribute to apply to subtitles generatedfor display at a first computing device of the plurality of differentcomputing devices in the user profile; store a second attribute to applyto subtitles generated for display at a second computing device of theplurality of computing devices in the user profile; identify thecomputing device at which the subtitles are to be generated for displayat the first computing device; wherein: the control circuitry configuredto identify the first attribute is further configured to access the userprofile to identify the first attribute to apply to the subtitles to begenerated for display at the first computing device; the controlcircuitry configured to access the amended subtitle file is furtherconfigured to access the subtitle file at the first computing device;and the control circuitry configured to generate the subtitles of theamended subtitle file for display is further configured to generate thesubtitles for display at the first computing device.
 19. The system ofclaim 11, wherein: the control circuitry configured to access thesubtitle file is further configured to access a subtitle file at a firstcomputing device; the control circuitry configured to identify a firstattribute is further configured to identify, at the first computingdevice, a first attribute to apply to at least a subset of the subtitlesto be generated for display at a second computing device; the controlcircuitry configured to amend the subtitle file is further configured toamend the subtitle file at the first computing device; the controlcircuitry is further configured to transmit the amended subtitle filefrom the first computing device to the second computing device; and thecontrol circuitry configured to generate the subtitles for display isfurther configured to generate the subtitles for display at the secondcomputing device, wherein the first attribute is applied to the subsetof the subtitles.
 20. The system of claim 11, wherein: the controlcircuitry configured to access the subtitle file is further configuredto access a subtitle file at a first computing device; the controlcircuitry is further configured to transmit the subtitle file from thefirst computing device to a server; the control circuitry configured toidentify a first attribute is further configured to identify, at theserver, a first attribute to apply to at least a subset of the subtitlesto be generated for display at a second computing device; the controlcircuitry configured to amend the subtitle file is further configured toamend the subtitle file at the server; the control circuitry is furtherconfigured to transmit the amended subtitle file from the server to thesecond computing device; and the control circuitry configured togenerate the subtitles for display is further configured to generate thesubtitles for display at the second computing device, wherein the firstattribute is applied to the subset of the subtitles. 21-30. (canceled)